Shift configurations for manufacturing execution systems

ABSTRACT

The disclosure describes a system for executing schedules in a manufacturing execution system (MES). In some embodiments, the system is configured to enable multiple shift patterns to be entered for a single entity. In some embodiments, the system is configured to prioritize the shift patterns based on an execution time. In some embodiments, the system includes one or more of a schedule pattern table, a schedule template, and an entity table, which are linked to each other to define parameters of one or more schedules. In some embodiments, the system is configured to automatically assign a time zone the time entered that matches the time zone where the entity associated with the schedule is located.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims the benefit of and priority to U.S. ProvisionalApplication No. 63/315,162, filed Mar. 1, 2022, which is herebyincorporated herein by reference in its entirety for all purposes.

BACKGROUND

This disclosure generally relates to the field of networked computerizedsystems utilized to monitor, log, and display relevantmanufacturing/production events and associated data. More particularly,some embodiments of the present disclosure relate to ManufacturingExecution Systems (MESs). Such systems generally execute above and/oroutside of a control layer of a manufacturing and/or process controlsystem to record production events and related event data.

Highly advanced human-machine interface/process visualization systemsexist today that are linked to data sources such as sensors andcontrollers. Such systems acquire and digest (e.g., filter) processdata. The digested process data is displayed on a graphical displayrendered by a human machine interface. An example of such system is thewell-known Wonderware INTOUCH® human-machine interface (HMI) softwaresystem for visualizing and controlling a wide variety of industrialprocesses. An INTOUCH HMI process visualization application includes aset of graphical views of a particular process. Each view, in turn,comprises one or more graphical elements. The graphical elements are“animated” in the sense that their display state changes over time inresponse to associated/linked data sources.

The MES monitors production and records various production and/ormanufacturing events and applies business rules to render decisionsgoverning production operations carried out by the Supervisory Controland Data Acquisition (SCADA) system. Many MES systems interface tohigher level Enterprise Resource Planning (ERP) systems.

Current MESs do not support multiple (overriding) shift configurations.For example, there is no way to configure temporary shift definitions tocover an alternate shift schedule for a short amount of time, such asholiday schedules that override from 6 am-12 pm to 8 am-4 pm. Inaddition, there are no shift exceptions (additive or subtractive) withrobust configurations to allow different combinations. In addition,current MESs may have a 1000 plus lines of convoluted code for shiftchange processes and frequently require creating and deleting recordsfrom a shift to go table.

FIG. 1 illustrates a present schema for a shift change process incurrent MES systems. Daily Tasks (around midnight 12 a) creates shiftschedules for the current day and the next 2 days in the shift_to_gotable. Obsolete schedules are cleaned-up on a daily basis. Theshift_to_go table has to be rebuilt for any changes made in theshift_sched or shift_exc tables. Shift exceptions are not handled wellin these MES systems.

Therefore, there is a need in the art for an MES system able toeffectively modify shift scheduling to reflect scheduling needs atvarious times of year and various locations.

SUMMARY

In some embodiments, the system comprises a SCADA platform and an MESplatform. In some embodiments, runtime process data generated by aregulatory control platform is received by the SCADA platform throughany combination of process data interfaces. In some embodiments, thesource of the process data includes sensor data provided by fielddevices (i.e., components, assets, elements) to regulatory controlprocessors (via a variety of interfaces). The process data thereafterpasses from the regulatory control platform to the SCADA platform viaany of a variety of communications channels including gateways,integrators, and runtime process data storage applications (e.g., plantHistorian database).

In some embodiments, an MES application running on a plant monitoringapplication node in a SCADA and/or MES environment provides a series ofviews driven by production and/or utilization information containedwithin the configured entities (elements) within the MES database. Insome embodiments, MES application software provides a configurablesystem for tracking the status (and thus utilization and availability)of plant equipment. In some embodiments, MES applications capture andprovide (near) real-time, and/or substantially instantaneous plantand/or production information relating to the operational status ofequipment within industrial (e.g.,) manufacturing process chains. Insome embodiments, MES applications enable tracking equipment utilizationand improving and/or optimizing plant equipment utilization throughefficient use of the plant equipment.

In some embodiments, the MES applications described herein provideperformance monitoring on an entity basis. In some embodiments, entitiesinclude physical assets in a process and/or industrial manufacturingfacility (broadly referred to as a “plant” herein) whose activity is tobe tracked by the MES. In some embodiments, entities include one or moreof an entire plant, an area of a plant (e.g., a production floor orwarehouse), an organizational group of machines (e.g., those in aparticular department), a piece of equipment (i.e., asset; component:e.g., a mixer, dispenser, palletizer, etc.), and/or a module that makesup a piece of equipment. In some embodiments, entities may operate invarying states (e.g., running, idle, down, maintenance, etc.) atdifferent times. In some embodiments, MES applications are configured topresent information about the operational states of selected entities.In some embodiments, MES applications are configured to presentinformation about any known reasons for a presently existing operationalstate of an entity. In some embodiments, MES applications are configuredto present information about the production of an entity.

In some embodiments, MES applications provide configuration tools thatallow users to create data models of entities, utilization states, andreasons to enable the display of relevant entity information. In someembodiments, an MES application includes model configuration templatesfor the various configurable MES models. In some embodiments, the MES isconfigured to enable a user to respond to queries in a configurationtool to populate the fields of a model configuration template (e.g., ashift configuration template) and instantiate a model of a particularentity, state, reason, etc.

In some embodiments, the MES is configured to generate a graphical userinterface (GUI) that includes an entity configuration view which enablesa user to query a new entity's name, capabilities, etc. In someembodiments, data models may be imported from unified SCADA systems intothe MES application. In some systems, modeled entities may be related tomodeled utilization states and reasons, for example, using relationaldatabase techniques.

In some embodiments, the disclosure is directed to a system forexecuting schedules within a manufacturing execution system (MES). Insome embodiments, the MES comprises a manufacturing execution system(MES) configured to monitor, control, and/or create reports about astatus of one or more entities within an industrial process. In someembodiments, the MES comprises a scheduling module configured togenerate one or more schedules for the one or more entities.

In some embodiments, the system includes one or more computerscomprising one or more processors and one or more non-transitorycomputer readable media, the one or more non-transitory computerreadable media having program instructions stored thereon that whenexecuted configures the scheduling module to execute one or more programsteps. In some embodiments, a step includes to generate, by the one ormore processors, a schedule pattern table. In some embodiments, a stepincludes to generate, by the one or more processors, a schedule templatetable. In some embodiments, a step includes to generate, by the one ormore processors, an entity link table. In some embodiments, a stepincludes to link, by the one or more processors, the schedule templatetable and the entity link table to the schedule pattern table. In someembodiments, a step includes to create, by the one or more processors,the one or more schedules based on one or more parameters defined in atleast one of the schedule pattern table, the schedule template table,and the entity link table.

In some embodiments, the schedule pattern table is configured to enablea user to define how schedule patterns are applied. In some embodiments,the schedule pattern table is configured to enable the user to define apattern timeframe for a schedule pattern. In some embodiments, thepattern timeframe includes a start time and an end time for the schedulepattern.

In some embodiments, the schedule template table is configured to enablethe user to define timeframe divisions of the pattern timeframe. In someembodiments, the schedule template table is configured to enable theuser to define a pattern of days the schedule pattern is implemented. Insome embodiments, the entity link table is configured to link the one ormore schedules to at least one of the one or more entities within theindustrial process.

In some embodiments, the one or more non-transitory computer readablemedia have further program instructions stored thereon that whenexecuted cause the scheduling module to generate, by the one or moreprocessors, overlapping patterns for a same entity. In some embodiments,the MES is configured to execute the overlapping patterns based on apattern execution hierarchy. In some embodiments, the pattern executionhierarchy comprises a plurality of patterns within the schedule patterntable. In some embodiments, the scheduling module is configured toimplement a priority of the overlapping patterns based on a respectivepattern start time.

In some embodiments, priority of the overlapping patterns includes afirst pattern comprising a first start date closest to a current dateexecuting before a second pattern comprising a second start date beforethe first start date. In some embodiments, the scheduling module isconfigured to assign a first time zone to one or more time inputsreceived for the one or more schedules based on a first location of afirst entity where the one or more time inputs were entered. In someembodiments, the scheduling module is configured to convert the firsttime zone to a second time zone based on a second location of a secondentity to which the one or more scheduled are assigned. In someembodiments, the MES is configured to execute the one or more schedulesfor the second entity when the one or more time inputs entered at thefirst location match a current time at the second location.

In some embodiments, the one or more non-transitory computer readablemedia have further program instructions stored thereon that whenexecuted cause the scheduling module to execute a step to generate, bythe one or more processors, a graphical user interface (GUI). In someembodiments, a step includes to display, by the one or more processors,the schedule pattern table on the graphical user interface. In someembodiments, a step includes to display, by the one or more processors,one or more input fields for one or more schedule pattern table inputsfor the schedule pattern table on the GUI. In some embodiments, the oneor more schedule pattern table inputs include one or more of a patternidentification input, a pattern name input, a pattern start time input,a pattern end time input, a recurring input, an additive input, and anenabled input.

In some embodiments, the one or more non-transitory computer readablemedia have further program instructions stored thereon that whenexecuted cause the scheduling module to generate, by the one or moreprocessors, a graphical user interface (GUI). In some embodiments, astep includes to display, by the one or more processors, the scheduletemplate table on the graphical user interface. In some embodiments, astep includes to display, by the one or more processors, one or moreinput fields for one or more schedule template table inputs for theschedule template table on the GUI.

In some embodiments, the one or more non-transitory computer readablemedia having further program instructions stored thereon that whenexecuted cause the scheduling module to generate, by the one or moreprocessors, a graphical user interface (GUI). In some embodiments, astep includes to display by the one or more processors, the entity linktable on the graphical user interface. In some embodiments, a stepincludes to display, by the one or more processors, one or more inputfields for one or more entity link table inputs for the entity linktable on the GUI.

In some embodiments, the pattern of days includes one or more days of aweek. In some embodiments, a maximum number the pattern of days is 7. Insome embodiments, selection of the recurring input in the schedulepattern table configures the scheduling module to repeat the pattern ofdays in the in the schedule template table until a pattern end timedefined by the pattern end time input in the schedule pattern table.

In some embodiments, the pattern timeframe includes the start time andthe end time for the schedule pattern. In some embodiments, the sched.In some embodiments, the schedule pattern type includes a recurringschedule, an additive schedule, and/or an enabled schedule. In someembodiments, the MES is configured to control the one or more entitiesbased at least in part on the one or more schedules.

DRAWING DESCRIPTION

FIG. 1 illustrates a present schema for current MES systems.

FIG. 2 shows an example screenshot of overlapping meeting schedules inMicrosoft Outlook.

FIGS. 3 and 4 depict various table structures and relationshipsaccording to some embodiments.

FIGS. 5-7 illustrate a shift pattern table according to someembodiments.

FIGS. 8-10 show sections of a shift template table modified from a shiftsched format according to some embodiments.

FIG. 8 illustrates an example table structure that does not relate toany particular examples (nor has any relation to other tables) in theother sections but is included for demonstration purposes about how thedata presentation can look according to some embodiments.

FIG. 9 does not relate to any particular examples in other sectionsbelow but is for demonstration purposes about how the data presentationcan look.

FIG. 10 shows a Table Structure for demonstration purposes using option2 for easy visualization of data.

FIG. 11 depicts a new Shift Pattern Ent Link Table according to someembodiments.

FIG. 12 shows a modified table structure for a shift history tableaccording to some embodiments.

FIG. 13 shows examples of shift schedules and shift exceptions includingan entity setup according to some embodiments.

FIGS. 14 and 15 show examples of regular shift schedules according tosome embodiments.

FIGS. 16 and 17 demonstrate how shift templates are processed when a newpattern (most recent) becomes effective and how that overrides the oldpatterns.

FIGS. 18 and 19 demonstrate how additive patterns/templates override theexisting/regular shift schedules according to some embodiments.

FIGS. 20 and 21 demonstrate how holiday shift patterns are processed byMES.

FIGS. 22 and 23 show a single entity maintenance (subtractive) exceptionschedule according to some embodiments.

FIGS. 24 and 25 depict a site/line entity maintenance exception scheduleaccording to some embodiments.

FIGS. 26-30 show example screenshots from AVEVA's Insight® PerformanceUI according to some embodiments.

FIG. 31 illustrates a computer system enabling or comprising the systemsand methods in accordance with some embodiments of the system.

FIG. 32 shows a flow diagram depicting computer implemented executionsteps performed by the MES according to some embodiments.

DETAILED DESCRIPTION

In some embodiments, the system includes software comprising processorexecutable instructions stored in one or more tangible, non-transitorycomputer readable media that when executed implement one or more steps.In some embodiments, the one or more steps (which may also berepresented by the phrase “configured to”) describe implementing one ormore aspects of the system by one or more computer processors.

As used herein, the term “shift” is interchangeable with the word“schedule” for defining the metes and bounds of the system. Thenon-limiting example configurations of the system according to someembodiments presented herein are understood to be specific examples anddetails of the system described above to aid those of ordinary skill tomake and use the system.

In some embodiments, the system is configured to provide productionmetrics about one or more physical production lines comprising anarrangement of physical entities. In some embodiments, a step includesdisplaying one or more interactive entity configuration views on adisplay of a workstation. In some embodiments, a step includes receivinguser inputs associated with the one or more interactive entityconfiguration views. In some embodiments, user inputs include entitydata representing one of the physical entities. In some embodiments, astep includes generating an entity data model from the entity data. Insome embodiments, one or more steps are repeated to generate an entitydata model for each of the physical entities in the physical productionline.

In some embodiments, a step includes displaying one or more interactiveline configuration views on a display of the workstation. In someembodiments, at least one of the one or more interactive lineconfiguration views has a work area and a palette of entityconfiguration objects. In some embodiments, at least a portion of theentity configuration objects represent the entity data models generatedas described above. In some embodiments, a step includes receiving userinputs that select the plurality of the entity configuration objectsand/or placing them on the work area to create a graphical object modelrepresenting the physical production line. In some embodiments, thegraphical object model comprises an arrangement of entity objectsrepresenting the arrangement of physical entities. In some embodiments,a step includes generating line data model based on the user inputs. Insome embodiments, production data is received about the physicalentities. In some embodiments, a step includes determining a productionmetric of the physical production line using the production data and theline data model. In some embodiments, a step includes displaying theproduction metric on the display as a step implemented by the system.

In some embodiments, an architecture for a manufacturing executionsystem (MES) includes a workstation that provides user access toresources maintained on an MES server. In some embodiments, the MESserver is physically located remote from the workstation. In someembodiments, the workstation is in a different time zone than theworkstation where scheduling information is entered and/or the MESserver. In some embodiments, the workstation includes a personalcomputer, mobile device, or other suitable processing device with thecapability to display MES information and/or allow for user input. Insome embodiments, the workstation is configured to access MES resourceson a server through a client application or a web browser (e.g., using aweb portal). In some embodiments, the MES server includes an MESdatabase, which stores data models used to describe the variousproduction lines and entities in a physical plant.

In some embodiments, the MES server is configured to store proceduresused, for example, in displaying information about the process plant atthe workstation or in determining production metrics used to evaluate orpredict the performance of the plant and/or production lines andentities contained therein. In some embodiments, the physical plant mayreport production and status information to the MES server by way of acommunications link. In some embodiments, the communications link mayinclude an intermediate SCADA system which communicates with the plantby way of process data interface. In some embodiments, data may bereported to the MES server directly from the plant floor eitherautomatically or through manual data entry.

In some embodiments, an entity includes a physical device and/or ageographical location of a process facility. In some embodiments,entities are assets used for the production or storage of goods eitherdirectly or indirectly. In some embodiments, an entity can be abuilding, a location within a building, a department, a single machine,etc. In some embodiments, entities are assigned various capabilities,but are not required to have any capabilities assigned thereto. In someembodiments, an entity has the capability to schedule and run jobs,schedule shifts, capture machine utilization, capture labor information,communicate with machine tools (e.g., by Distributed Numerical Control),track overall equipment effectiveness (OEE), receive production items,ship production items, store production items, log data, copy folders offiles regarding an item's production relative to the entity, and/orcapture quality information.

In some embodiments, a job may be an instance of an operation for a workorder. In some embodiments, in an MES, a physical entity may berepresented by a data model associated with that entity stored. In someembodiments, the data model includes information about the capabilitiesassigned to the entity. In some embodiments, multiple instances of thesame entity type are present. In some embodiments, these instances aremembers of an entity class that are capable of performing the same taskin a production plant. In some embodiments, MES applications providetools for creating data models describing an entity class. Other toolsmay allow easy instantiation of the class model to create correspondingmodels of each of the entity instances. In some embodiments, an entitystate configuration view allows a user to select default utilizationstates that the MES associates with the entity when one or more of thefollowing events occur: job starts, job ends, shift starts, shift ends.In some embodiments, a parent entity for a scheduling field allows auser to select an entity, whose model includes is capable of schedulingshifts. In some embodiments, the entity is a parent of the line fromwhich the line and its entities inherit their scheduled shifts.

In some embodiments, entity shift scheduling is achieved using patternsthat are capable of altering the length of the shift to accommodate realworld scenarios (e.g., maintenance with a shorter shift and overtimewith a longer shift) while allowing for both broad and narrow contexts(e.g., seasonal shift scheduling and/or other scheduling which caninclude one-off schedules). In some embodiments, shift scheduling isdecoupled from entity configuration such that a modification to a shiftschedule does not alter entity configuration. In some embodiments, themodifications are picked up and changes are processed at runtime. Insome embodiments, though the same shift schedule may be linked toentities that are in different time zones, shifts are processed in localtime zone of the entity. In some embodiments, changes to theconfiguration are detected and applied in the next minute at runtime. Insome embodiments, the shift and shift scheduling scheme represent anovel way to consolidate all the shift information and project theupcoming shifts (including exception shifts) for all the entities.

In some embodiments, reporting on manufacturing plants in differentparts of the world requires integration of complex shift configurationswhich often involve overlays. In some embodiments, the system allowsconfiguration of shift patterns that are discrete and decoupled fromentities which allows different types of exception-based shiftschedules, such as weekend schedule, overtime, maintenance, holidayschedules, etc. In some embodiments, at runtime, the information fromthe shift configuration is consolidated to perform a shift change usingthe entity's time zone.

In some embodiments, the shift patterns (or schedule patterns) areflexible enough that a pattern can represent upcoming holidays,maintenance, etc., and are configured to be easily linked to a singledownstream entity or the entire site. In some embodiments, an entity'snational or local holidays or other events can be automaticallypopulated in any of the scheduling processes described herein. In someembodiments, configuration changes are detected by the MES and processedin the next minute. In some embodiments, the system also projects shiftschedules for up to a week containing regular and exception shiftschedules for all entities.

In some embodiments, the system's shift configuration convenientlyconfigures shifts using date properties that control a shift pattern'sshelf life, i.e., when it becomes effective and when it becomesobsolete. In some embodiments, the shift configuration allows for acombination of regular shift patterns at parent entities andholiday/overtime shift exception patterns at single child entities. Insome embodiments, the system's shift schedule includes the ability toconfigure more than one shift and link them to a pattern. In someembodiments, the system's shift pattern entity link (ent link)represents a many-to-many configuration that supports linking a singleentity to multiple patterns or multiple entities to a single pattern. Insome embodiments, regarding runtime, for entities at different sites indifferent time zones, the shift changes are processed at the local timefor that entity. In some embodiments, the runtime uses the most recentstart effective (eff) date to derive the shift schedule for an entity.In some embodiments, the runtime picks up the changes and processes thechanges on the corresponding entities. Similarly, in some embodiments,the shift projections are updated when a configuration change isdetected.

In some embodiments, the system is configured to detect the time zone ofan entity and process shift changes local to the entity's time zone. Insome embodiments, the system is configured to link/associate one or moreshift schedules (patterns) to the entity and vice-versa. In someembodiments, the system is configured to create upcoming shiftschedules, such as overtime, holiday, and maintenance schedules, therebyeliminating manual intervention to put the entity in respective shifts.In some embodiments, the system is configured to put a single entity oran entire site in a specific shift schedule. In some embodiments, thesystem is configured to project upcoming shift schedules that includeall exceptions to the regular shift schedules.

In some embodiments, the system includes a “Microsoft Outlook® stylemeeting (shift) type” display configured to display recurring shiftschedules and exceptions, allowing more than one shift schedule to beconfigured for a given day or desired time period. In some embodiments,the system enables more than one overlapping shift to be configured fora shift timeline. In some embodiments, shift exceptions are embeddedinside the shift schedules which results in shift schedules that arevisually similar to overlapping meeting schedules in Microsoft Outlook®.Microsoft Outlook® is referenced as a visual aid herein, but thefunctionality between the Microsoft Outlook® and the system describedherein are not related. In some embodiments, the most recent schedulehaving the latest start effective (start_eff) datetime is used. In someembodiments, when the most recent schedule ends (i.e., the end_eff isolder than the current datetime), then the next most recent schedule ispicked up. In some embodiments, the Shift_to_go table is eliminated asthere is no need to constantly delete and regenerate future shifts inthe table, which saves computer resources and execution time. In someembodiments, the system includes a “shift_history” table configured tohold any comments that are applicable for a shift schedule.

In some embodiments, shift schedules are not limited to 8 hourschedules. In some embodiments, shift schedules can be any one or moreof the following, as non-limiting examples:

-   -   Recurring for a specific day each week, perpetually.    -   Recurring for a specific day on a time range, for example,        overriding schedule from October 4^(th) to October 31^(st) for 4        weeks.    -   Recurring schedule that can also span more or less than a day,        covering an entire weekend, for example.    -   A one-off schedule, for example, a 0 shift schedule with a        starting time of December 25^(th) and ending time of December        31^(st), where the entire duration (from December 25^(th) to        December 31^(st)) will be on shift 0.

FIG. 2 shows an example screenshot of overlapping meeting schedules inMicrosoft Outlook® as a visual aid. In some embodiments, the system isconfigured to display one or more schedules in Microsoft Outlook®. FIG.2 does not represent how the shifts will be configured in the MES systemdisclosed herein but is meant to illustrate how overlapping shifts canbe assigned to an entity.

In some embodiments, the system includes one or more of the followingdatabase table parameters:

-   -   In some embodiments, all the tables include one or more of the        housekeeping fields (last_edit_comment, last_edit_by, and        last_edit_at).    -   In some embodiments, if the unique identifier is not part of a        primary key, then row_id is added to that table.    -   In some embodiments, the times configured in the shift schedule        table (shift templates) are processed in entity's local time        zone. For example, when the shift template of start time 6:00 am        is assigned to Entity 1 in East Coast and Entity 2 in West        Coast, they will have their shift schedules processed in their        local times according to some embodiments. In some embodiments,        a 6 am shift will be processed at 6 am local to Eastern Time for        Entity 1. In some embodiments, a 6 am shift will be processed at        6 am local to Pacific Time for Entity 2.

FIGS. 3 and 4 depict various table structures and relationshipsaccording to some embodiments. In some embodiments, the system includesone or more of the following table structures and relationships:

-   -   shift_history (added new columns).    -   Shift (Schedule) Pattern: A pattern that that dictates how the        shifts are applicable throughout the organization, site, etc.    -   Shift (Schedule) Template: A template that indicates how the        shifts are repeated for a pattern in a week.    -   Shift (Schedule) Pattern Entity Link: This holds a link between        a pattern and an entity, resulting in many-to-many relationships        between them, and holds an exception for a single entity, line,        etc. from the regular shift pattern/template defined at the        organization level. In some embodiments, the exception schedule        can be related to line maintenance, entity maintenance, etc. In        some embodiments, this exception schedule is configured to put        the entire line, area, or entity, etc. in a no shift        configuration for a period of time. In some embodiments, the        exception entity should be an entity that is downstream to the        entity from which the shift schedules are derived.

FIGS. 5-7 illustrate a shift pattern table according to someembodiments. In some embodiments, the purpose of the shift pattern tableis to hold shift patterns that are applicable to entities at site levelfor entities that can schedule shifts, organization, etc. which ispropagated to all entities downstream. In some embodiments, the systemincludes at least one or more of 3 types of shift patterns that can beconfigured at site level that are applicable to all the entitiesdownstream:

-   -   A pattern can have regular shift schedules for a fixed period of        time, or the schedules can be perpetual.    -   A pattern can override an existing shift schedule for a fixed        period of time.    -   A pattern can represent a holiday, site wide event, etc.        schedule for a fixed period of time

In some embodiments, the shift pattern table is a table that includesthe metadata of a shift pattern. In some embodiments, pattern id inputfield is a primary key. In some embodiments, pattern name is unique. Insome embodiments, start eff local is unique.

FIGS. 8-10 show sections of a shift template table according to someembodiments. In some embodiments, the purpose of the shift templatetable is to hold shift templates/schedules that are repeated each weekfor a period of time. In some embodiments, the start day of the week(Sunday) is represented as 0. In some embodiments, the start day of theweek (Sunday) is represented as 1 to align with Microsoft Outlook®scheduling configurations. In some embodiments, end day span is onlyapplicable to the end time. In some embodiments, end day span cannot bemore than 7 days (allowable values are 0-7) in order to have a recurringschedule that does not extend more than a week.

In some embodiments, there are at least two options for the shift_schedtable structure. In some embodiments, the start day will not be part ofthe primary keys in if option 2.

In some embodiments, option 1 includes Pattern Id+Start Day+Start Timebeing the primary key (unique). In some embodiments, option 1 includesthe template shift schedules being configured for each day and shift. Insome embodiments, option 1 results in a lot more data in the databasethat the runtime must deal with than option 2. FIG. 8 illustrates anexample table structure output based on the schedule input fields in oneor more tables.

In some embodiments, option 2 includes a different table structure. Insome embodiments, Pattern Id+Start Time+Shift ID is a unique primarykey. In some embodiments, the template shift schedules do not have to beconfigured for each shift. In some embodiments, the shift templates areconfigured once and are assigned to a weekday to which the templateshifts are applicable. In some embodiments, option 2 results insignificantly less data in the table as compared to option 1. FIG. 9 aschedule output according to some embodiments.

FIG. 10 shows a Table Structure for demonstration purposes using option2 for easy visualization of data. In some embodiments, the differencebetween option 1 and option 2 is how the start day is used. In someembodiments, option 1 has shift templates for each day and shift. Insome embodiments, option 2 has Boolean columns for a shift indicatingwhether that template is applicable for a particular weekday or not.

FIG. 11 depicts a new Shift Pattern Ent Link Table according to someembodiments. In some embodiments, the purpose of this table is to linkthe shift templates (pattern) to one or more entities. In someembodiments, this table holds many-to-many relationship between thepattern and entity. In some embodiments, Shift Sched Ent Id+EntId+Pattern ID is the primary key. In some embodiments, shift schedulesare normally processed using the entity that can schedule shifts. Insome embodiments, the downstream entities from the schedulable entityinherit shifts from the ancestor that schedule shifts. In someembodiments, without having the ancestor entity identified that canschedule shifts, it could be become complicated in runtime code whenoverriding schedules.

In some embodiments, Ent Id denotes the entity that is configured to beon a specific schedule. In some embodiments, this is the entity that isdownstream from the “shift sched ent id” where the shifts are inheritedfrom. In some embodiments, the shift sched ent_id and ent_id can also bethe same when the site, organization, etc. is put under an exceptionschedule or they are configured for a repetitive schedule.

FIG. 12 shows a modified table structure for a shift history tableaccording to some embodiments. In some embodiments, the table includes 3columns to hold additional context information. In some embodiments,pattern ID is added to this table to identify the pattern that was usedto derive the shift schedule. In some embodiments, two new commentsfields are added to this table.

In some embodiments, the system is configured for runtime shiftscheduling and shift exception handling. In some embodiments, Shiftschedules can be recurring or a one-off schedule. In some embodiments,at a given point of time, the pattern associated with a schedule withthe most recent start_eff datetime and the end time in the future isconsidered for shift change. In some embodiments, if the most recentpattern does not have shift schedules for weekdays, then those days areset to shift 0, even if the older patterns had shift schedules. In someembodiments, when a pattern overrides with shift schedules, only theoverridden days (days that are selected) are applicable for overridingthe existing shifts. In some embodiments, the unselected weekdays fromthe shift schedule are ignored. In some embodiments, even if there areconflicting, overlapping, etc., shift patterns, the datetime that hasthe most recent (and having the end time as null or in the future) isconsidered as the effective shift pattern.

In some embodiments, the additive shift exceptions are treated just likeany other shift schedule, except that the unconfigured days are not putinto shift 0, rather that the unconfigured times are just ignored. Insome embodiments, the subtractive shift exceptions are treated asone-off schedule for the site entity (and its descendants) or can beassigned to a specific single entity.

FIG. 13 shows examples of shift schedules and shift exceptions includingan entity setup according to some embodiments. In some embodiments,shifts are determined local to the entity's time zone, and theirrespective UTC times are adjusted based on the local time of the shift.

FIGS. 14 and 15 show examples of regular shift schedules according tosome embodiments. In some embodiments, the purpose of these exampletables is to demonstrate how regular shift templates are processed bythe MES. In some embodiments, shift templates are configured for Mon,Tue, Wed from 6 am-2 pm local time, and no shifts on the remaining days.In some embodiments, the remaining times in a week are in shift 0. Insome embodiments, with regard to shift pattern, pattern ID is theprimary key, and pattern name+start eff local is unique.

FIGS. 16 and 17 demonstrate how shift templates are processed when a new(most recent) pattern becomes effective and how that overrides the oldpatterns. In some embodiments, the new pattern overrides the existingpattern. In some embodiments, the new pattern has fewer shift schedulesthan the older pattern. In some embodiments, the unconfigured days areput into shift 0. In some embodiments, the entity (or site) that followsthe old pattern will continue to follow the old pattern because the newpattern is not linked to the second entity.

FIGS. 18 and 19 demonstrate how additive patterns/templates override theexisting/regular shift schedules according to some embodiments. In someembodiments, this example follows the same shift schedules as describedin the previous example, but the shift is extended by 1 hour for 2 weeks(on 2 Tuesdays). In some embodiments, the days that are not configuredfor pattern 3 (for example, Sun, Mon, Wed, Thu, Fri, Sat) are not putinto 0 shift, rather they are left out to follow the regular shiftschedules.

FIGS. 20 and 21 demonstrate how holiday shift patterns (recurring isfalse and additive is false) are processed by an MES. In someembodiments, the holiday schedule defined at the site/organization levelis applicable to all entities that link to this pattern.

FIGS. 22 and 23 show a single entity maintenance (subtractive) exceptionschedule according to some embodiments. In some embodiments, the purposeof this example is to demonstrate how a maintenance schedule isprocessed by an MES. In some embodiments, this example demonstrates asingle entity that goes into no shift to perform the repair work duringthat period, thereby processing an exception schedule from the standardset of patterns defined at the site, organization level.

FIGS. 24 and 25 depict a site/line entity maintenance (subtractive)exception schedule according to some embodiments. In some embodiments,the purpose of this example is to demonstrate how a maintenance schedulefor a site/line entity is processed by an MES. In some embodiments, thesite entity (Entity: 1 in this example) is put into an exceptionschedule for 2 days for maintenance activities on all entities in thissite. In some embodiments, this site entity and all of its descendants(till the next entity in downstream that has can_sched_shifts set totrue) is put under shift 0 for maintenance. In some embodiments, thismaintenance schedule is considered an exception schedule from thepatterns defined at the site/organization level.

In some embodiments, the system includes one or more parameters. In someembodiments, table parameters and/or changes to MES systems that includeone or more of:

-   -   New “shift_pattern” table    -   New shift_template table with new table structure    -   New shift_pattern_ent link table    -   Modifying shift_history table adding new columns    -   Removing/dropping the following tables: shift_to_go, shift_exc    -   Modifying SP logic to accommodate the new schema structure    -   Modifying upgrade script to populate current data into new        schema structure    -   S-API changes/S-API Functional Test Changes    -   DB Fit Tests    -   Test Scripts: Reliable Data Script for db fit test and S-API        test    -   PSR scripts    -   SQL Server 2016 requirements

In some embodiments, the system includes SP changes/dependencies. Insome embodiments, there are about 50 to 60 stored procedurescreating/processing shift schedules. In some embodiments, of thosestored procedures, perhaps, only about 10-15 are useful, meaning manyshould be modified to use the new table structure. In some embodiments,the shift schedules become simple with this type of configuration. Insome embodiments, the most recent shift schedule is the active schedule,so there is no need to do any complex processing that is performed inseveral SPs. In some embodiments, the bulk of stored procedures usingshift_to_go tables can be safely removed since the logic on these storedprocedures will no longer be relevant to shift processing. In someembodiments, the system includes covering views for shift_to_go tablesreturning similar data that used to return before. In some embodiments,changes include removing DoPastShiftChanges and CreateScheduleShifts.

In some embodiments, user interface requirements include one or more ofthe following:

-   -   Configure the shift pattern with the pattern disabled (i.e.,        enabled=false).    -   Configure shift templates.    -   Configure shift pattern ent link.

Enable the shift pattern (i.e., enabled=true). In some embodiments, whenthe enable flag is set to true after all the configuration is complete,the MES Service will start processing the shift schedules for theentity. However, if the pattern is enabled without having adequateconfigurations, there may be many shift changes in between resultingunnecessary shift data in the database according to some embodiments.

FIGS. 26-30 show example screenshots from AVEVA's Insight® PerformanceUI according to some embodiments.

FIG. 31 illustrates a computer system 410 enabling or comprising thesystems and methods in accordance with some embodiments of the system.In some embodiments, the computer system 410 can operate and/or processcomputer-executable code of one or more software modules of theaforementioned system and method. Further, in some embodiments, thecomputer system 410 can operate and/or display information within one ormore graphical user interfaces (e.g., HMIs) integrated with or coupledto the system.

In some embodiments, the computer system 410 can comprise at least oneprocessor 432. In some embodiments, the at least one processor 432 canreside in, or coupled to, one or more conventional server platforms (notshown). In some embodiments, the computer system 410 can include anetwork interface 435 a and an application interface 435 b coupled tothe least one processor 432 capable of processing at least one operatingsystem 434. Further, in some embodiments, the interfaces 435 a, 435 bcoupled to at least one processor 432 can be configured to process oneor more of the software modules (e.g., such as enterprise applications438). In some embodiments, the software application modules 438 caninclude server-based software and can operate to host at least one useraccount and/or at least one client account and operate to transfer databetween one or more of these accounts using the at least one processor432.

With the above embodiments in mind, it is understood that the system canemploy various computer-implemented operations involving data stored incomputer systems. Moreover, the above-described databases and modelsdescribed throughout this disclosure can store analytical models andother data on computer-readable storage media within the computer system410 and on computer-readable storage media coupled to the computersystem 410 according to various embodiments. In addition, in someembodiments, the above-described applications of the system can bestored on computer-readable storage media within the computer system 410and on computer-readable storage media coupled to the computer system410. In some embodiments, these operations are those requiring physicalmanipulation of physical quantities. Usually, though not necessarily, insome embodiments these quantities take the form of one or more ofelectrical, electromagnetic, magnetic, optical, or magneto-opticalsignals capable of being stored, transferred, combined, compared andotherwise manipulated. In some embodiments, the computer system 410 cancomprise at least one computer readable medium 436 coupled to at leastone of at least one data source 437 a, at least one data storage 437 b,and/or at least one input/output 437 c. In some embodiments, thecomputer system 410 can be embodied as computer readable code on acomputer readable medium 436. In some embodiments, the computer readablemedium 436 can be any data storage that can store data, which canthereafter be read by a computer (such as computer 440). In someembodiments, the computer readable medium 436 can be any physical ormaterial medium that can be used to tangibly store the desiredinformation or data or instructions and which can be accessed by acomputer 440 or processor 432. In some embodiments, the computerreadable medium 436 can include hard drives, network attached storage(NAS), read-only memory, random-access memory, FLASH based memory,CD-ROMs, CD-Rs, CD-RWs, DVDs, magnetic tapes, other optical andnon-optical data storage. In some embodiments, various other forms ofcomputer-readable media 436 can transmit or carry instructions to aremote computer 440 and/or at least one user 431, including a router,private or public network, or other transmission or channel, both wiredand wireless. In some embodiments, the software application modules 438can be configured to send and receive data from a database (e.g., from acomputer readable medium 436 including data sources 437 a and datastorage 437 b that can comprise a database), and data can be received bythe software application modules 438 from at least one other source. Insome embodiments, at least one of the software application modules 438can be configured within the computer system 410 to output data to atleast one user 431 via at least one graphical user interface rendered onat least one digital display.

In some embodiments, the computer readable medium 436 can be distributedover a conventional computer network via the network interface 435 awhere the system embodied by the computer readable code can be storedand executed in a distributed fashion. For example, in some embodiments,one or more components of the computer system 410 can be coupled to sendand/or receive data through a local area network (“LAN”) 439 a and/or aninternet coupled network 439 b (e.g., such as a wireless internet). Insome embodiments, the networks 439 a, 439 b can include wide areanetworks (“WAN”), direct connections (e.g., through a universal serialbus port), or other forms of computer-readable media 436, or anycombination thereof.

In some embodiments, components of the networks 439 a, 439 b can includeany number of personal computers 440 which include for example desktopcomputers, and/or laptop computers, or any fixed, generally non-mobileinternet appliances coupled through the LAN 439 a. For example, someembodiments include one or more of personal computers 440, databases441, and/or servers 442 coupled through the LAN 439 a that can beconfigured for any type of user including an administrator. Someembodiments can include one or more personal computers 440 coupledthrough network 439 b. In some embodiments, one or more components ofthe computer system 410 can be coupled to send or receive data throughan internet network (e.g., such as network 439 b). For example, someembodiments include at least one user 431 a, 431 b, is coupledwirelessly and accessing one or more software modules of the systemincluding at least one enterprise application 438 via an input andoutput (“I/O”) 437 c. In some embodiments, the computer system 410 canenable at least one user 431 a, 431 b, to be coupled to accessenterprise applications 438 via an I/O 437 c through LAN 439 a. In someembodiments, the user 431 can comprise a user 431 a coupled to thecomputer system 410 using a desktop computer, and/or laptop computers,or any fixed, generally non-mobile internet appliances coupled throughthe internet 439 b. In some embodiments, the user can comprise a mobileuser 431 b coupled to the computer system 410. In some embodiments, theuser 431 b can connect using any mobile computing 431 c to wirelesscoupled to the computer system 410, including, but not limited to, oneor more personal digital assistants, at least one cellular phone, atleast one mobile phone, at least one smart phone, at least one pager, atleast one digital tablets, and/or at least one fixed or mobile internetappliances.

The subject matter described herein are directed to technologicalimprovements to the field of Manufacturing Execution Systems byenhancing scheduling capabilities. The disclosure describes thespecifics of how a machine including one or more computers comprisingone or more processors and one or more non-transitory computer readablemedia implement the system and its improvements over the prior art. Theinstructions executed by the machine cannot be performed in the humanmind or derived by a human using a pen and paper but require the machineto convert process input data to useful output data. Moreover, theclaims presented herein do not attempt to tie-up a judicial exceptionwith known conventional steps implemented by a general-purpose computer;nor do they attempt to tie-up a judicial exception by simply linking itto a technological field. Indeed, the systems and methods describedherein were unknown and/or not present in the public domain at the timeof filing, and they provide technologic improvements advantages notknown in the prior art. Furthermore, the system includes unconventionalsteps that confine the claim to a useful application.

It is understood that the system is not limited in its application tothe details of construction and the arrangement of components set forthin the previous description or illustrated in the drawings. The systemand methods disclosed herein fall within the scope of numerousembodiments. The previous discussion is presented to enable a personskilled in the art to make and use embodiments of the system. Anyportion of the structures and/or principles included in some embodimentscan be applied to any and/or all embodiments: it is understood thatfeatures from some embodiments presented herein are combinable withother features according to some other embodiments. Thus, someembodiments of the system are not intended to be limited to what isillustrated but are to be accorded the widest scope consistent with allprinciples and features disclosed herein.

Some embodiments of the system are presented with specific values and/orsetpoints. These values and setpoints are not intended to be limitingand are merely examples of a higher configuration versus a lowerconfiguration and are intended as an aid for those of ordinary skill tomake and use the system.

Furthermore, acting as Applicant's own lexicographer, Applicant impartsthe explicit meaning and/or disavow of claim scope to the followingterms:

Applicant defines any use of “and/or” such as, for example, “A and/orB,” or “at least one of A and/or B” to mean element A alone, element Balone, or elements A and B together. In addition, a recitation of “atleast one of A, B, and C,” a recitation of “at least one of A, B, or C,”or a recitation of “at least one of A, B, or C or any combinationthereof” are each defined to mean element A alone, element B alone,element C alone, or any combination of elements A, B and C, such as AB,AC, BC, or ABC, for example.

“Substantially” and “approximately” when used in conjunction with avalue encompass a difference of 5% or less of the same unit and/or scaleof that being measured.

“Simultaneously” as used herein includes lag and/or latency timesassociated with a conventional and/or proprietary computer, such asprocessors and/or networks described herein attempting to processmultiple types of data at the same time. “Simultaneously” also includesthe time it takes for digital signals to transfer from one physicallocation to another, be it over a wireless and/or wired network, and/orwithin processor circuitry.

As used herein, “can” or “may” or derivations there of (e.g., the systemdisplay can show X) are used for descriptive purposes only and isunderstood to be synonymous and/or interchangeable with “configured to”(e.g., the computer is configured to execute instructions X) whendefining the metes and bounds of the system.

In addition, the term “configured to” means that the limitations recitedin the specification and/or the claims must be arranged in such a way toperform the recited function: “configured to” excludes structures in theart that are “capable of” being modified to perform the recited functionbut the disclosures associated with the art have no explicit teachingsto do so. For example, a recitation of a “container configured toreceive a fluid from structure X at an upper portion and deliver fluidfrom a lower portion to structure Y” is limited to systems wherestructure X, structure Y, and the container are all disclosed asarranged to perform the recited function. The recitation “configured to”excludes elements that may be “capable of” performing the recitedfunction simply by virtue of their construction but associateddisclosures (or lack thereof) provide no teachings to make such amodification to meet the functional limitations between all structuresrecited. Another example is “a computer system configured to orprogrammed to execute a series of instructions X, Y, and Z.” In thisexample, the instructions must be present on a non-transitory computerreadable medium such that the computer system is “configured to” and/or“programmed to” execute the recited instructions: “configure to” and/or“programmed to” excludes art teaching computer systems withnon-transitory computer readable media merely “capable of” having therecited instructions stored thereon but have no teachings of theinstructions X, Y, and Z programmed and stored thereon. The recitation“configured to” can also be interpreted as synonymous with operativelyconnected when used in conjunction with physical structures.

It is understood that the phraseology and terminology used herein is fordescription and should not be regarded as limiting. The use of“including,” “comprising,” or “having” and variations thereof herein ismeant to encompass the items listed thereafter and equivalents thereofas well as additional items. Unless specified or limited otherwise, theterms “mounted,” “connected,” “supported,” and “coupled” and variationsthereof are used broadly and encompass both direct and indirectmountings, connections, supports, and couplings. Further, “connected”and “coupled” are not restricted to physical or mechanical connectionsor couplings.

The previous detailed description is to be read with reference to thefigures, in which like elements in different figures have like referencenumerals. The figures, which are not necessarily to scale, depict someembodiments and are not intended to limit the scope of embodiments ofthe system.

Any of the operations described herein that form part of the inventionare useful machine operations. The invention also relates to a device oran apparatus for performing these operations. The apparatus can bespecially constructed for the required purpose, such as a specialpurpose computer. When defined as a special purpose computer, thecomputer can also perform other processing, program execution orroutines that are not part of the special purpose, while still beingcapable of operating for the special purpose. Alternatively, theoperations can be processed by a general-purpose computer selectivelyactivated or configured by one or more computer programs stored in thecomputer memory, cache, or obtained over a network. When data isobtained over a network the data can be processed by other computers onthe network, e.g., a cloud of computing resources.

The embodiments of the invention can also be defined as a machine thattransforms data from one state to another state. The data can representan article, that can be represented as an electronic signal andelectronically manipulate data. The transformed data can, in some cases,be visually depicted on a display, representing the physical object thatresults from the transformation of data. The transformed data can besaved to storage generally, or in particular formats that enable theconstruction or depiction of a physical and tangible object. In someembodiments, the manipulation can be performed by a processor. In suchan example, the processor thus transforms the data from one thing toanother. Still further, some embodiments include methods can beprocessed by one or more machines or processors that can be connectedover a network. Each machine can transform data from one state or thingto another, and can also process data, save data to storage, transmitdata over a network, display the result, or communicate the result toanother machine. Computer-readable storage media, as used herein, refersto physical or tangible storage (as opposed to signals) and includeswithout limitation volatile and non-volatile, removable andnon-removable storage media implemented in any method or technology forthe tangible storage of information such as computer-readableinstructions, data structures, program modules or other data.

Although method operations are presented in a specific order accordingto some embodiments, the execution of those steps do not necessarilyoccur in the order listed unless explicitly specified. Also, otherhousekeeping operations can be performed in between operations,operations can be adjusted so that they occur at slightly differenttimes, and/or operations can be distributed in a system which allows theoccurrence of the processing operations at various intervals associatedwith the processing, as long as the processing of the overlay operationsare performed in the desired way and result in the desired systemoutput.

It will be appreciated by those skilled in the art that while theinvention has been described above in connection with particularembodiments and examples, the invention is not necessarily so limited,and that numerous other embodiments, examples, uses, modifications anddepartures from the embodiments, examples and uses are intended to beencompassed by the claims attached hereto. The entire disclosure of eachpatent and publication cited herein is incorporated by reference, as ifeach such patent or publication were individually incorporated byreference herein. Various features and advantages of the invention areset forth in the following claims.

We claim:
 1. A system for executing schedules within a manufacturingexecution system (MES) comprising: a manufacturing execution system(MES) configured to monitor, control, and/or create reports about astatus of one or more entities within an industrial process; wherein theMES comprises a scheduling module configured to generate one or moreschedules for the one or more entities; one or more computers comprisingone or more processors and one or more non-transitory computer readablemedia, the one or more non-transitory computer readable media havingprogram instructions stored thereon that when executed cause thescheduling module to: generate, by the one or more processors, aschedule pattern table; generate, by the one or more processors, aschedule template table; generate, by the one or more processors, anentity link table; link, by the one or more processors, the scheduletemplate table and the entity link table to the schedule pattern table;and create, by the one or more processors, the one or more schedulesbased on one or more parameters defined in at least one of the schedulepattern table, the schedule template table, and the entity link table.2. The system of claim 1, wherein the schedule pattern table isconfigured to enable a user to define how schedule patterns are applied;wherein the schedule pattern table is configured to enable the user todefine a pattern timeframe for a schedule pattern; and wherein thepattern timeframe includes a start time and an end time for the schedulepattern.
 3. The system of claim 2, wherein the schedule template tableis configured to enable the user to define timeframe divisions of thepattern timeframe; and wherein the schedule template table is configuredto enable the user to define a pattern of days the schedule pattern isimplemented.
 4. The system of claim 3, wherein the entity link table isconfigured to link the one or more schedules to at least one of the oneor more entities within the industrial process.
 5. The system of claim4, wherein the one or more non-transitory computer readable media havefurther program instructions stored thereon that when executed cause thescheduling module to: generate, by the one or more processors,overlapping patterns for a same entity; wherein the MES is configured toexecute the overlapping patterns based on a pattern execution hierarchy;and wherein the pattern execution hierarchy comprises a plurality ofpatterns within the schedule pattern table.
 6. The system of claim 5,wherein the scheduling module is configured to implement a priority ofthe overlapping patterns based on a respective pattern start time. 7.The system of claim 6, wherein priority of the overlapping patternsincludes a first pattern comprising a first start date closest to acurrent date executing before a second pattern comprising a second startdate before the first start date.
 8. The system of claim 4, wherein thescheduling module is configured to assign a first time zone to one ormore time inputs received for the one or more schedules based on a firstlocation of a first entity where the one or more time inputs wereentered; and wherein the scheduling module is configured to convert thefirst time zone to a second time zone based on a second location of asecond entity to which the one or more scheduled are assigned; andwherein the MES is configured to execute the one or more schedules forthe second entity when the one or more time inputs entered at the firstlocation match a current time at the second location.
 9. The system ofclaim 4, wherein the one or more non-transitory computer readable mediahave further program instructions stored thereon that when executedcause the scheduling module to: generate, by the one or more processors,a graphical user interface (GUI); display, by the one or moreprocessors, the schedule pattern table on the graphical user interface,and display, by the one or more processors, one or more input fields forone or more schedule pattern table inputs for the schedule pattern tableon the GUI; wherein the one or more schedule pattern table inputsinclude one or more of a pattern identification input, a pattern nameinput, a pattern start time input, a pattern end time input, a recurringinput, an additive input, and an enabled input.
 10. The system of claim4, wherein the one or more non-transitory computer readable media havefurther program instructions stored thereon that when executed cause thescheduling module to: generate, by the one or more processors, agraphical user interface (GUI); display, by the one or more processors,the schedule template table on the graphical user interface, anddisplay, by the one or more processors, one or more input fields for oneor more schedule template table inputs for the schedule template tableon the GUI.
 11. The system of claim 4, the one or more non-transitorycomputer readable media having further program instructions storedthereon that when executed cause the scheduling module to: generate, bythe one or more processors, a graphical user interface (GUI); display,by the one or more processors, the entity link table on the graphicaluser interface; and display, by the one or more processors, one or moreinput fields for one or more entity link table inputs for the entitylink table on the GUI.
 12. The system of claim 9, wherein the pattern ofdays includes one or more days of a week; wherein a maximum number thepattern of days is 7; and wherein selection of the recurring input inthe schedule pattern table configures the scheduling module to repeatthe pattern of days in the in the schedule template table until apattern end time defined by the pattern end time input in the schedulepattern table.
 13. The system of claim 4, wherein the pattern timeframeincludes the start time and the end time for the schedule pattern. 14.The system of claim 13, wherein the schedule pattern table is configuredto enable the user to define a schedule pattern type; and wherein theschedule pattern type includes a recurring schedule, an additiveschedule, and/or an enabled schedule.
 15. The system of claim 1, whereinthe MES is configured to control the one or more entities based at leastin part on the one or more schedules.